package dialer.ws.base.entity;

import java.sql.Timestamp;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

/**
 * CurrentCalls entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "current_calls", schema = "call_center")
public class CurrentCalls implements java.io.Serializable {

	// Fields

	/**
	 * 
	 */
	private static final long serialVersionUID = -4874581693358176766L;
	private Integer id;
	private Calls calls;
	private Timestamp fechaInicio;
	private String uniqueid;
	private String queue;
	private String agentnum;
	private String event;
	private String channel;
	private String channelClient;
	private String hold;

	// Constructors

	/** default constructor */
	public CurrentCalls() {
	}

	/** minimal constructor */
	public CurrentCalls(Calls calls, Timestamp fechaInicio, String queue,
			String agentnum, String event, String channel) {
		this.calls = calls;
		this.fechaInicio = fechaInicio;
		this.queue = queue;
		this.agentnum = agentnum;
		this.event = event;
		this.channel = channel;
	}

	/** full constructor */
	public CurrentCalls(Calls calls, Timestamp fechaInicio, String uniqueid,
			String queue, String agentnum, String event, String channel,
			String channelClient, String hold) {
		this.calls = calls;
		this.fechaInicio = fechaInicio;
		this.uniqueid = uniqueid;
		this.queue = queue;
		this.agentnum = agentnum;
		this.event = event;
		this.channel = channel;
		this.channelClient = channelClient;
		this.hold = hold;
	}

	// Property accessors
	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "id", unique = true, nullable = false)
	public Integer getId() {
		return this.id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "id_call", nullable = false)
	public Calls getCalls() {
		return this.calls;
	}

	public void setCalls(Calls calls) {
		this.calls = calls;
	}

	@Column(name = "fecha_inicio", nullable = false, length = 19)
	public Timestamp getFechaInicio() {
		return this.fechaInicio;
	}

	public void setFechaInicio(Timestamp fechaInicio) {
		this.fechaInicio = fechaInicio;
	}

	@Column(name = "uniqueid", length = 32)
	public String getUniqueid() {
		return this.uniqueid;
	}

	public void setUniqueid(String uniqueid) {
		this.uniqueid = uniqueid;
	}

	@Column(name = "queue", nullable = false, length = 16)
	public String getQueue() {
		return this.queue;
	}

	public void setQueue(String queue) {
		this.queue = queue;
	}

	@Column(name = "agentnum", nullable = false, length = 16)
	public String getAgentnum() {
		return this.agentnum;
	}

	public void setAgentnum(String agentnum) {
		this.agentnum = agentnum;
	}

	@Column(name = "event", nullable = false, length = 32)
	public String getEvent() {
		return this.event;
	}

	public void setEvent(String event) {
		this.event = event;
	}

	@Column(name = "Channel", nullable = false, length = 32)
	public String getChannel() {
		return this.channel;
	}

	public void setChannel(String channel) {
		this.channel = channel;
	}

	@Column(name = "ChannelClient", length = 32)
	public String getChannelClient() {
		return this.channelClient;
	}

	public void setChannelClient(String channelClient) {
		this.channelClient = channelClient;
	}

	@Column(name = "hold", length = 2)
	public String getHold() {
		return this.hold;
	}

	public void setHold(String hold) {
		this.hold = hold;
	}

}